/**
 * 活动相关接口
 */

import { post } from './request'
import type { SpbSignUpRequest, SpbSignUpResponse } from './apifox/models'

/**
 * 线下报名
 * 用户报名参加线下活动
 * 
 * @param data 请求参数，包含：
 *   - name: 姓名
 *   - phone: 电话
 *   - idCard: 身份证号
 *   - signUpTime: 预约时间
 * @returns 返回报名结果和预约信息
 */
export function signUp(data: SpbSignUpRequest): Promise<SpbSignUpResponse> {
  return post<SpbSignUpResponse>('/sign_up', data, {
    showLoading: true,
    loadingText: '提交中...'
  })
}

/**
 * 取消线下活动预约
 * 取消用户已预约的线下活动
 * 
 * @returns 返回取消预约结果
 */
export function cancelOfflineActivity(): Promise<any> {
  return post<any>('/cancel_offline_activity', {}, {
    showLoading: true,
    loadingText: '取消中...'
  })
}

